100 POKE53280,6:MT$="[154]":GOTO390 110 GET#FI,BY$:IFBY$<>""THENPRINT#3,BY$;:GOTO110 120 PRINT#3,NU$;:RETURN 130 GET#FI,BY$:IFBY$=""THENBY=0:RETURN 140 BY=ASC(BY$):RETURN 150 DV=WD/256:HI=INT(DV):LO=WD-HI*256:PRINT#3,CHR$(LO);CHR$(HI);:RETURN 160 GOSUB130:LO=BY:GOSUB130:LI(FI)=BY*256+LO 170 GOSUB130:LO=BY:GOSUB130:LN(FI)=BY*256+LO 180 IFLI(FI)>0THENPRINTTAB(9+(FI-1)*13);LN(FI);"[145]" 190 CA(FI)=CA(FI)+LS(FI):LS(FI)=LI(FI)-CA(FI):RETURN 200 LI(3)=LI(3)+LS(FI):WD=LI(3):GOSUB150:WD=LN(FI):GOTO150 210 GOSUB200:GOSUB110:GOTO160 220 IFLI(1)=0ANDLI(2)=0THENRETURN 230 IFLI(2)=0THENFI=1:GOSUB210:GOTO220 240 IFLI(1)=0THENFI=2:GOSUB210:GOTO220 250 IFLN(1)LN(2)THENFI=2:GOSUB210:GOTO220 270 FI=1:GOSUB210:FI=2:GOSUB280:GOTO220 280 GET#FI,BY$:IFBY$<>""THEN280 290 GOTO160 300 GOSUB130:LO=BY:GOSUB130:CA(FI)=BY*256+LO:RETURN 310 WD=CA(3):GOTO150 320 PRINT PROMPT$;"[160][160][160][160][160] [157][157][157][157][157][157][157][157][157][157][157][157][157][157][157][157]"; 330 INPUT FI$:FC$=LEFT$(FI$,1) 340 NULL=FC$="[160]":QUIT=FC$="_":RETURN 350 OPEN FI,8,FI+2,"0:"+FI$ 360 INPUT#15,EN,EM$,ET,ES 370 ERR=EN>19:IF ERR THEN PRINT" ERROR #"EN;EM$:CLOSE FI:PRINT"[145][145][145]" 375 FORI=1TO2500:NEXT:RETURN 390 DIM CA(3),LI(3),LN(2),LS(2) 400 NU$=CHR$(0) 410 PRINT:PRINT"[147]"MT$"  DISK MERGE " 415 PRINT" ENTER '_' AT ANY PROMPT TO QUIT" 416 FORI=1TO20:PRINT"[192] ";:NEXT 420 OPEN 15,8,15 430 FI=1:PROMPT$=" PRIMARY FILE" 440 GOSUB 320:IF NULL THEN 440 450 IF QUIT THEN 700 460 GOSUB 350:IF ERR THEN 440 470 FI=2:PROMPT$=" SECONDARY FILE" 480 GOSUB 320:SECNULL=NULL 490 IF SECNULL THEN PRINT "*RELOCATE ONLY*":GOTO530 500 IF QUIT THEN 700 510 AF$=FI$ 520 GOSUB 350:IF ERR THEN 480 530 FI=3:PROMPT$=" MERGED FILE" 540 GOSUB 320:IF NULL THEN 540 550 IF QUIT THEN 700 560 FI$=FI$+",P,W":GOSUB 350:IF ERR=0 THEN 620 570 IF EN<>70 THEN 540 580 PRINT "[145] [145]" 590 BF$=FI$:CLOSE 2:GOSUB 350:E2=ERR 600 FI=2:FI$=AF$:GOSUB350:FI=3:FI$=BF$ 610 IF E2 THEN 530 620 PRINT" ------------ NOW MERGING -------------" 625 PRINT" PRI FILE # SEC FILE #" 630 PRINT" [183][183][183][183][183][183][183][183][183][183][183][183] [183][183][183][183][183][183][183][183][183][183][183][183]":BA$="1025" 640 CA(3)=VAL(BASE$):LI(3)=CA(3) 650 FI=1:GOSUB 300:GOSUB 160 660 IF NOT SECNULL THEN FI=2:GOSUB 300:GOSUB 160 670 GOSUB 310 680 GOSUB 220 690 PRINT#3,NU$;NU$; 700 CLOSE 3:CLOSE 2:CLOSE 1:CLOSE 15 710 PRINT" ALL DONE":END